package br.com.comprasPublicas.entity;

import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToOne;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;

/**
 *
 * @author helsen_rafael
 * @since 11/01/11
 */
@Entity
public class ItemPedido implements Serializable  {

    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private int id_itemPedido;

    @OneToOne(targetEntity=Pedido.class)
    private Pedido pedido;

    @OneToOne(targetEntity=Produto.class)
    private Produto produto;

    @Column(name="unidade", length=4, nullable=false)
    private String unidade;
    
    @Column(name="quantidade", nullable=false)
    private double quantidade;

    @Cascade(CascadeType.ALL)

    /**
     * @return the id_itemPedido
     */
    public int getId_itemPedido() {
        return id_itemPedido;
    }

    /**
     * @param id_itemPedido the id_itemPedido to set
     */
    public void setId_itemPedido(int id_itemPedido) {
        this.id_itemPedido = id_itemPedido;
    }

    /**
     * @return the quantidade
     */
    public double getQuantidade() {
        return quantidade;
    }

    /**
     * @param quantidade the quantidade to set
     */
    public void setQuantidade(double quantidade) {
        this.quantidade = quantidade;
    }

    /**
     * @return the produto
     */
    public Produto getProduto() {
        return produto;
    }

    /**
     * @param produto the produto to set
     */
    public void setProduto(Produto produto) {
        this.produto = produto;
    }

    /**
     * @return the pedido
     */
    public Pedido getPedido() {
        return pedido;
    }

    /**
     * @param pedido the pedido to set
     */
    public void setPedido(Pedido pedido) {
        this.pedido = pedido;
    }

    /**
     * @return the unidade
     */
    public String getUnidade() {
        return unidade;
    }

    /**
     * @param unidade the unidade to set
     */
    public void setUnidade(String unidade) {
        this.unidade = unidade;
    }

}
